In recent years, semiconductor memories have been used in various areas such as a main storage of a large-scale computer, a personal computer, a home electric appliance, a mobile phone, and the like. Particularly, a flash memory has such characteristics that data is not erased even if it is powered off, and it has a structure suitable for high integration, and used in information apparatuses such as a mobile phone and a digital camera.
Types of Flash EEPROM nonvolatile memory are mainly an NOR type and an NAND type. As for the NOR type, a read rate is high, the number of read operations is about 1013, and it is used as an instruction code storage. However, the NOR type has a small effective bandwidth for writing, and therefore not suitable for file recording. As for the NAND type, although an access rate is low compared to the NOR type, high integration is allowed, a large number of bits can be stored or erased at the same time is large, and written data can be captured in burst and programming is allowed in page units having many bits. Therefore, the NAND type memory has a large effective bandwidth, and is used for a memory card, a USB memory, a memory of a mobile phone, a memory of a portable music player, and the like. Recently, it is also considered as a replacement of a hard disk (hereinafter referred to as an HDD).
One problem in a case where the NAND type flash memory is as a replacement of an HDD is a problem of system lifetime. An HDD is equipped with a Self-Monitoring, Analysis and Reporting Technology (commonly known as SMART), which is a self-diagnosis function intended for early detection of a failure of the HDD itself and failure prediction, and thereby can notify a user of failure rate. Many of currently manufactured HDDs have this SMART, and predict a failure rate from items including a temperature, an operating time, a spin-up time, the number of alternate sectors (spare areas in which a sector causing bad data is arranged), and the like.
If an NAND type flash memory is also considered to need reliability equivalent to HDDs, it requires a self-diagnosis function like SMART. However, reason of failure in the NAND type flash memory is different from that of the HDDs. Due to characteristics of recoding media of HDDs, they have no limit on the number of write operations, but is susceptible to heat. Further, since they are machine components, there is a problem of aged deterioration of mechanical operation. On the other hand, the NAND type flash memory has little machine components, but consideration should be given to a failure caused by bad data due to an excessive number of store/erase operations. Therefore, a new criterion of system lifetime is needed in consideration of the number of store/erase operations specific to the NAND type flash memory.
A limit on the number of store/erase operations of the NAND type flash memory will be described. For writing (storing/erasing) in a flash memory, high voltage is applied between a substrate and a gate such that electrons are injected and released into a floating gate. If this is performed many times, gate oxide film around the floating gate is deteriorated, and if it is left as is for a long time, the electrons injected into the floating gate get out therefrom, and data is destroyed. In other words, as the number of write operations increases, retention characteristics degrade. The number of write operations of current flash memories is about 105, which is less than that of other nonvolatile memories. Therefore, if it is used as a replacement of an HDD, it is considered that data may be destroyed due to the limit of the number of store/erase operations, causing a trouble of the system. As a measure against such a limit on the number of store/erase operations, wear leveling is performed in which the number of erase operations is counted and a threshold value is set for each block, and physical address translation is performed between a block whose number of erase operations is large and a block whose number of erase operations is small, so that the numbers of store/erase operations are averaged.
Limit on the number of store/erase operations affects not only writing but also reading. During reading from the NAND type flash memory, high voltage is repeatedly applied to a non-selected cell (in view of block units, all pages except a target to be read), causing read disturb in which electrons enter in the floating gate through the gate oxide film and thus change a threshold voltage of a cell so that data is destroyed. In addition, during use, the gate oxide film is degraded due to storing/erasing, and accordingly read disturb occurs more frequently. Recently, NAND type flash memories have been developed to have more advanced multivalued memorization in which more than one bit information is stored in one cell, and therefore the effect of the read disturb seems to be larger. To prevent such read disturb, it is required to perform rewriting in (refresh) a block whose number of read operations is large so as to return a threshold voltage to its original state, which affects the number of store/erase operations.
There has been proposed a storage device which determines a memory state of a flash memory or the like, including: a memory having a main memory area and a spare memory area; display means; and processing means, wherein, when the number of rewrite operations in each address of the main memory area reaches a specified number, information stored in the address is transferred to the spare memory area; and when a remaining capacity of the spare memory area reaches a specified remaining capacity, the display means is driven to notify an operator or the like of a time to replace the memory (see, for example, Japanese Patent Laid-Open No. 2000-181805). However, in such a storage device, an end of memory lifetime for writing is determined to be reached and the memory is replaced in a state where the number of write operations in the spare memory area is still small. Therefore, the memory cannot be efficiently used.